package com.one.group.model.entity;

import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;

/**
 * @author kld
 * @date 2025/9/29 20:20
 * @description 报事报修实体类
 */
@Data
@Table("sp_repair_reports")
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class RepairReport  implements Serializable {

    @Id(keyType = KeyType.Auto)
    private Long id;
    @Column(tenantId = true)
    private Long tenantId;
    @Column(value = "cell_id")
    private Long cellId; // 小区ID（关联 sp_cell 表）
    
    @Column("room_number")
    private String roomNumber;
    // 来源 （上门，电话）
    private String source;
    @Column("contact_person")
    private String contactPerson;
//    @NotBlank(message="联系电话不能为空")
    @Column("contact_phone")
    private String contactPhone;
    private String status;
    private String importance;
    @Column("accept_time")
    private Date acceptTime;
    @Column("required_complete_time")
    private Date requiredCompleteTime;
    @Column("create_time")
    private Date createTime;
    @Column("update_time")
    private Date updateTime;
    @Column(value = "is_deleted",isLogicDelete = true)
    private Integer isDeleted;
    private String details; // 详细情况
    @Column("appointment_time")
    private Date appointmentTime; // 预约时间
    private String type; // 类型（报修、报事等）
    private String handler; // 受理人

}
